Experience Engine Behaviors
This document provides a comprehensive overview of all behaviors used in the Experience Engine. Behaviors are configuration flags that control various aspects of the application's functionality.
Setting Behaviors via URL Parameters
When embedding the Experience Engine in an iframe, you can control behaviors by adding URL parameters. The format for setting behaviors is:
settings.behavior.[behaviorName]=true
Multiple behaviors can be set by combining them with the &
character. For example:
https://experience.sourcesync.io/your-experience?settings.behavior.hideControls=true&preventForwardSeek=true
This URL would:
- Hide the video controls
- Prevent users from seeking forward in the video
All behaviors listed in this document can be set via URL parameters using this pattern.
Activation Related Behaviors
hideVisitedInstance
Purpose: Controls the visibility of previously visited activation instances.
Value: true
or false
(default: false
)
Effect: When enabled, hides activation instances that the user has already visited/interacted with.
Usage: Used in activation filtering to prevent showing repeated content.
Example:
settings.behavior.hideVisitedInstance=true
closeDetailsOnTimeEnd
Purpose: Controls whether details panel automatically closes when activation time ends.
Value: true
or false
(default: false
)
Effect: When enabled, the details panel will automatically close when the current activation is no longer visible due to timing.
Usage: Helps maintain a clean user interface by removing irrelevant information.
Example:
settings.behavior.closeDetailsOnTimeEnd=true
hideActivationPreview
Purpose: Controls the visibility of activation previews.
Value: true
or false
(default: false
)
Effect: When enabled, hides the preview elements of activations.
Usage: Used when you want to suppress preview displays while maintaining activation functionality.
Example:
settings.behavior.hideActivationPreview=true
hideActivationPreviewForced
Purpose: Forces hiding of activation previews regardless of other settings.
Value: true
or false
(default: false
)
Effect: When enabled, overrides other preview visibility settings to ensure previews are hidden.
Usage: Used when preview hiding needs to be enforced at a higher level.
Example:
settings.behavior.hideActivationPreviewForced=true
hideActivationDetailsTopBar
Purpose: Controls the visibility of the top bar in activation details.
Value: true
or false
(default: false
)
Effect: When enabled, removes the top navigation bar from activation details view.
Usage: Used for customizing the activation details UI layout.
Example:
settings.behavior.hideActivationDetailsTopBar=true
showPreviewThroughDetails
Purpose: Controls whether previews remain visible when details are open.
Value: true
or false
(default: false
)
Effect: When enabled, allows activation previews to remain visible even when detail panels are open.
Usage: Useful for maintaining context while viewing details.
Example:
settings.behavior.showPreviewThroughDetails=true
preventHidingOverflownActivationPreview
Purpose: Controls the hiding of overflow activation previews.
Value: true
or false
(default: false
)
Effect: When enabled, prevents the automatic hiding of activation previews that overflow their container.
Usage: Used to ensure all previews remain visible regardless of space constraints.
Example:
settings.behavior.preventHidingOverflownActivationPreview=true
fullscreenDetailsInMobilePortrait
Purpose: Controls details view behavior in mobile portrait mode.
Value: true
or false
(default: true
)
Effect: When enabled, makes the details view fullscreen when in mobile portrait orientation.
Usage: Optimizes viewing experience on mobile devices.
Example:
settings.behavior.fullscreenDetailsInMobilePortrait=false
clickOutsideToCloseSam
Purpose: Controls whether clicking outside closes the Source Activation Menu (SAM).
Value: true
or false
(default: true
)
Effect: When enabled, allows users to close the activation menu by clicking outside of it.
Usage: Provides an intuitive way to dismiss the activation menu.
Example:
settings.behavior.clickOutsideToCloseSam=false
Video Playback Control Behaviors
playThroughDetails
Purpose: Controls video playback behavior when details are shown.
Value: true
or false
(default: false
)
Effect: When enabled, video continues playing while details are being viewed.
Usage: Allows for uninterrupted video playback during detail exploration.
Example:
settings.behavior.playThroughDetails=true
preventSeek
Purpose: Controls whether users can seek through the video.
Value: true
or false
(default: false
)
Effect: When enabled, prevents users from seeking to different positions in the video.
Usage: Used to enforce linear playback or prevent skipping content.
Example:
settings.behavior.preventSeek=true
preventForwardSeek
Purpose: Controls forward seeking specifically.
Value: true
or false
(default: false
)
Effect: When enabled, prevents users from seeking forward in the video while allowing backward seeking.
Usage: Used to prevent users from skipping ahead while allowing them to review previous content.
Example:
settings.behavior.preventForwardSeek=true
preventClickToPlay
Purpose: Controls click-to-play functionality.
Value: true
or false
(default: false
)
Effect: When enabled, prevents video playback control through clicking.
Usage: Used when other playback control methods are preferred.
Example:
settings.behavior.preventClickToPlay=true
preventPause
Purpose: Controls whether users can pause the video.
Value: true
or false
(default: false
)
Effect: When enabled, prevents users from pausing video playback.
Usage: Used when continuous playback needs to be enforced.
Example:
settings.behavior.preventPause=true
autoPlay
Purpose: Controls automatic video playback.
Value: true
or false
(default: false
)
Effect: When enabled, video starts playing automatically when loaded.
Usage: Used for automatic content start without user interaction.
Example:
settings.behavior.autoPlay=true
autoPlayWhenDirect
Purpose: Controls autoplay behavior for direct access.
Value: true
or false
(default: false
)
Effect: When enabled, automatically plays video when accessed directly (not in an iframe).
Usage: Used to differentiate autoplay behavior between embedded and direct viewing.
Example:
settings.behavior.autoPlayWhenDirect=true
muted
Purpose: Controls initial audio state.
Value: true
or false
(default: false
)
Effect: When enabled, starts video in muted state.
Usage: Used for controlling initial audio experience, often in conjunction with autoplay.
Example:
settings.behavior.muted=true
forceUnmute
Purpose: Controls forced unmuting of video.
Value: true
or false
(default: false
)
Effect: When enabled, forces video to be unmuted regardless of other settings.
Usage: Used to ensure audio playback in specific scenarios.
Example:
settings.behavior.forceUnmute=true
loop
Purpose: Controls video looping behavior.
Value: true
or false
(default: false
)
Effect: When enabled, video will automatically replay from the beginning when it ends.
Usage: Used for continuous content playback.
Example:
settings.behavior.loop=true
Video UI Control Behaviors
hideControls
Purpose: Controls visibility of all video controls.
Value: true
or false
(default: false
)
Effect: When enabled, hides all video playback controls.
Usage: Used for a cleaner viewing experience or to restrict user control.
Example:
settings.behavior.hideControls=true
hidePlayerControls
Purpose: Controls visibility of player-specific controls.
Value: true
or false
(default: false
)
Effect: When enabled, hides the player's built-in control interface.
Usage: Used when custom controls are preferred.
Example:
settings.behavior.hidePlayerControls=true
hideOverlayPlayButton
Purpose: Controls visibility of the overlay play button.
Value: true
or false
(default: false
)
Effect: When enabled, hides the large play button overlay on the video.
Usage: Used for customizing the video player's appearance.
Example:
settings.behavior.hideOverlayPlayButton=true
hidePlayButton
Purpose: Controls visibility of the standard play button.
Value: true
or false
(default: false
)
Effect: When enabled, hides the regular play/pause button in the control bar.
Usage: Used when play control should be restricted or handled differently.
Example:
settings.behavior.hidePlayButton=true
hideVolume
Purpose: Controls visibility of volume controls.
Value: true
or false
(default: false
)
Effect: When enabled, hides volume control elements.
Usage: Used when volume control should be restricted or handled differently.
Example:
settings.behavior.hideVolume=true
hideProgressBar
Purpose: Controls visibility of the progress bar.
Value: true
or false
(default: false
)
Effect: When enabled, hides the video progress/seek bar.
Usage: Used when timeline navigation should be restricted.
Example:
settings.behavior.hideProgressBar=true
hideFullscreen
Purpose: Controls visibility of fullscreen button.
Value: true
or false
(default: false
)
Effect: When enabled, hides the fullscreen toggle button.
Usage: Used when fullscreen viewing should be restricted.
Example:
settings.behavior.hideFullscreen=true
hideVideoInPortraitOnOverlay
Purpose: Controls video visibility in portrait mode with overlay.
Value: true
or false
(default: false
)
Effect: When enabled, hides video when in portrait orientation with overlay active.
Usage: Used for optimizing layout in different orientations.
Example:
settings.behavior.hideVideoInPortraitOnOverlay=true
hidePipThumbnails
Purpose: Controls visibility of Picture-in-Picture thumbnails.
Value: true
or false
(default: false
)
Effect: When enabled, hides PiP thumbnail previews.
Usage: Used for customizing PiP experience.
Example:
settings.behavior.hidePipThumbnails=true
showPipThumbnailsOnLoad
Purpose: Controls initial PiP thumbnail visibility.
Value: true
or false
(default: false
)
Effect: When enabled, shows PiP thumbnails immediately upon loading.
Usage: Used for immediate PiP preview availability.
Example:
settings.behavior.showPipThumbnailsOnLoad=true
Layout and Orientation Behaviors
forcePortraitOrientation
Purpose: Controls orientation forcing to portrait.
Value: true
or false
(default: false
)
Effect: When enabled, forces the interface into portrait orientation.
Usage: Used for ensuring consistent layout in specific scenarios.
Example:
settings.behavior.forcePortraitOrientation=true
disableBottomSpace
Purpose: Controls bottom spacing in the interface.
Value: true
or false
(default: false
)
Effect: When enabled, removes the default bottom spacing.
Usage: Used for customizing layout spacing.
Example:
settings.behavior.disableBottomSpace=true
Button Configuration Behaviors
btnConfig.share.color
Purpose: Controls share button color.
Value: A valid CSS color value (e.g., hex code, RGB, color name)
Effect: Sets the color of the share button.
Usage: Used for customizing share button appearance.
Example:
settings.behavior.btnConfig.share.color=#FF0000
btnConfig.share.textColor
Purpose: Controls share button text color.
Value: A valid CSS color value (e.g., hex code, RGB, color name)
Effect: Sets the text color of the share button.
Usage: Used for customizing share button text appearance.
Example:
settings.behavior.btnConfig.share.textColor=#FFFFFF
Content Related Behaviors
contentWallet
Purpose: Controls content wallet functionality.
Value: true
or false
(default: false
)
Effect: When enabled, activates content wallet features.
Usage: Used for managing digital content assets.
Example:
settings.behavior.contentWallet=true
Time and Duration Behaviors
originDateEnd
Purpose: Controls content end date.
Value: ISO 8601 date string (e.g., "2024-12-31T23:59:59Z")
Effect: Specifies when content should stop being available.
Usage: Used for time-limited content.
Example:
settings.behavior.originDateEnd=2024-12-31T23:59:59Z
originDateStart
Purpose: Controls content start date.
Value: ISO 8601 date string (e.g., "2024-01-01T00:00:00Z")
Effect: Specifies when content should become available.
Usage: Used for scheduled content release.
Example:
settings.behavior.originDateStart=2024-01-01T00:00:00Z
originDuration
Purpose: Controls content duration.
Value: Number (duration in seconds)
Effect: Specifies the intended duration of the content.
Usage: Used for controlling playback timing and synchronization.
Example:
settings.behavior.originDuration=300